home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / answers / comp / software-eng / part3 < prev    next >
Text File  |  1994-04-16  |  32KB  |  600 lines

  1. Newsgroups: comp.software-eng,comp.answers,news.answers
  2. Path: bloom-beacon.mit.edu!hookup!torn!news.ccs.queensu.ca!qucis.queensu.ca!qucis.queensu.ca!dalamb
  3. From: dalamb@qucis.queensu.ca (David Alex Lamb)
  4. Subject: FAQ 3: Software engineering readings
  5. Message-ID: <readmsg_766497906@qucis.QueensU.CA>
  6. Followup-To: comp.software-eng
  7. Keywords: FAQ
  8. Sender: dalamb@qucis.queensu.ca (David Lamb)
  9. Supersedes: <readmsg_763477506@qucis.QueensU.CA>
  10. Reply-To: dalamb@qucis.queensu.ca (David Alex Lamb)
  11. Organization: Computing and Information Science, Queen's University at Kingston, Ontario,  K7L 3N6, Canada
  12. References: <faqmsg_766497906@qucis.QueensU.CA>
  13. Date: Sat, 16 Apr 1994 12:05:28 GMT
  14. Approved: news-answers-request@MIT.Edu
  15. Expires: Sat, 4 Jun 1994 12:05:06 GMT
  16. Lines: 581
  17. Xref: bloom-beacon.mit.edu comp.software-eng:11154 comp.answers:4928 news.answers:18128
  18.  
  19. Last-Modified: 31 Jul 1993
  20. Archive-name: software-eng/part3
  21.  
  22. This is the monthly "frequently asked questions" (FAQ) posting on
  23. reading materials for software engineers.  Topics include:
  24.    Textbooks
  25.    Periodicals on Software Engineering
  26.    Other sources of information
  27.    General reading for software engineers
  28.    Metrics
  29.    Metrics for object-oriented systems
  30.    User Interface Design
  31.    Human Factors
  32.    Software Testing
  33.    Requirements Analysis
  34.    Collaborative Requirements Analysis
  35.    Object-Oriented Analysis and Design
  36.    Programming Style
  37.    Formal Specification
  38.    Software Process
  39. Look for lines starting with "Subject:" (control-G command in rn).
  40.  
  41. Be warned: the only mechanism we use to compose this list is to gather
  42. information submitted by people around the net, post it regularly, and
  43. incorporate feedback.  All evaluations are the opinions of those who submitted
  44. them; your mileage may vary.  Send comments to dalamb@qucis.queensu.ca (David
  45. Alex Lamb).
  46.  
  47.  
  48. ------------------------------------------------------------------------
  49. Subject: Textbooks
  50. Date: 28 Apr 1993
  51. Originally collected by: hsrender@happy.colorado.edu (Hal Render)
  52.  
  53. Numbers 1-8 are Hal Render's original list in his rough order of preference.
  54. 1. _Software Engineering: The Production of Quality Software_
  55.    by Shari Pfleeger, 2nd Edition, Macmillan, 1991, ISBN 0-02-395115-X
  56.    hsrender@happy.colorado.edu: Like #2, had the best explanations of
  57.         what I want to cover (different engineering lifecycles, methods,
  58.         and tools).
  59. 2. _Software Engineering: A Practitioner's Approach_ by Roger Pressman,
  60.    2nd Edition, McGraw-Hill, 1987, ISBN 0-07-050783-X
  61.    (3rd edition available fall 1991)
  62.    hsrender@happy.colorado.edu: Like #1, had the best explanations of
  63.         what I want to cover (different engineering lifecycles, methods,
  64.         and tools).
  65.    robb@iotek.uucp (Robb Swanson): the definitive book on the subject as
  66.         far as I'm concerned.
  67.    johnson@aplcen.apl.jhu.edu (Michelle Johnson): a good text book as well
  68.         as reference
  69. 3. _Software Systems Engineering_ by Andrew Sage and James D. Palmer
  70.    hsrender@happy.colorado.edu: Like #1, had the best explanations of
  71.         what I want to cover (different engineering lifecycles, methods,
  72.         and tools).
  73. 4. _Fundamentals of Software Engineering_ by Ghezzi, Jayazeri and Mandrioli
  74.    Prentice-Hall, 1991
  75.    hsrender@happy.colorado.edu: Like #5, good, and covered the issue of
  76.         specifications and verification better, but at the expense of
  77.         other aspects of the development process.  I may use one of them
  78.         for a graduate course in software engineering.
  79.    Nancy Leveson <nancy@murphy.ICS.UCI.EDU>:  Better than Sommerville,
  80.         although I like much of Sommerville.
  81. 5. _Software Engineering with Abstractions_ by Valdis Berzins and Luqi
  82.    Addison Wesley, 1991, 624 pages.
  83.    hsrender@happy.colorado.edu: Like #4, good, and covered the issue of
  84.         specifications and verification better, but at the expense of
  85.         other aspects of the development process.  I may use one of them
  86.         for a graduate course in software engineering.
  87.    straub@cs.UMD.EDU (Pablo A. Straub): Both this and #9 have a good
  88.         emphasis on using formal techniques (i.e.,  doing engineering
  89.         properly), but they do not disregard informal methods; chapters
  90.         are roughly organized around the traditional lifecycle.
  91.         #5 is longer and can be used in a two-term sequence or for
  92.         graduate students (it's  possible  to  use  it in a one-term
  93.         undergrad course by covering only part of the material). One
  94.         thing I like is that management and validation is given in all
  95.         chapters, so that these activities are integrated into the
  96.         development process.  Emphasizes the use of formally specified
  97.         abstractions.  Uses the authors' specification language (Spec)
  98.         to develop a project in Ada.
  99. 6. _Software Engineering_ by Ian Sommerville
  100.     Addison-Wesley, ISBN 0-201-17568-1
  101.    hsrender@happy.colorado.edu: Our current text, and my basic problem
  102.         with it is the vague way it covers many of the topics.
  103. 7. _Software Engineering with Student Project Guidance_ by Barbara Mynatt
  104.    hsrender@happy.colorado.edu: Like #8, not bad, but fairly low-level
  105.         and doesn't cover many tools and techniques I consider valuable.
  106. 8. _Software Engineering_ by Roger Jones
  107.    hsrender@happy.colorado.edu: Like #7, not bad, but fairly low-level
  108.         and doesn't cover many tools and techniques I consider valuable.
  109. 9. _Software Engineering: Planning for Change by David Alex Lamb,
  110.    Prentice-Hall, 1988, 298 pages
  111.    straub@cs.UMD.EDU (Pablo A. Straub): Both this and #5 have a good
  112.         emphasis on using formal techniques (i.e.,  doing engineering
  113.         properly), but they do not disregard informal methods; chapters
  114.         are roughly organized around the traditional lifecycle.
  115.         #9 has the advantage of being shorter, yet covering most relevant
  116.         topics (lifecycle phases, formal specs, v&v, configurations,
  117.         management, etc.).  It is very appropriate for an undergrad course.
  118.         It emphasizes that maintenance is a given and should be taken into
  119.         account (hence the title).  Several specification techniques are
  120.         covered and used to develop a project in Pascal.
  121. 10._A Practical Handbook for Software Development_ by N.D. Birrell and
  122.    M.A. Ould, Cambridge University Press, 1985/88. ISBN 0-521-34792-0
  123.         (Paper cover); ISBN 0-521-25462-0 (Hard cover)
  124.    ewoods@hemel.bull.co.uk (Eoin Woods)
  125. 11._Fundamentals of Computing for Software Engineers_ by Eric S. Chan &
  126.         Murat M. Tanik, Van Nostrand Reinhold
  127.    kayaalp@csvax.seas.smu.edu (Mehmet M. Kayaalp MD)
  128. 12._Software Engineering, 2nd Edition_ by Stephen R. Schach, Aksen Associates
  129.    (ISBN 0-256-12998-3); also Richard D. Irwin, Inc., 1993.
  130. 13._Practical Software Engineering_ by Stephen R. Schach, Aksen Associates
  131.    and Richard D. Irwin Inc. (ISBN 0-256-11455-2), 1992. Advertised as
  132.    sophomore through senior level, emphasizing teams, maintenance, reuse,
  133.    CASE tools.
  134.  
  135. ------------------------------------------------------------------------
  136. Subject: Periodicals on Software Engineering
  137. Date: 12 May 1992
  138.  
  139. Professional Journals
  140. Meant for working professionals with technical backgrounds.
  141.   IEEE Software
  142.     summary: often presents recent research work, but much more readably
  143.             than typical research journals.
  144.     publisher: IEEE (Institute of Electrical and Electronic Engineers)
  145.     subscriptions: IEEE Service Center, 445 Hoes Lane, P.O. Box 1331,
  146.             Piscataway, NJ 08855-1331, USA
  147.   Software Engineering Notes
  148.     summary: unrefereed newsletter; includes digest of comp.risks
  149.     publisher: ACM (Association for Computing Machinery) SIGSOFT
  150.             (Special Interest Group on Software engineering),
  151.     subscriptions: ACM, 11 West 42d St, New York, NY 10036, USA
  152.   Software Maintenance News
  153.     summary: monthly report on people and technology in maintenance;
  154.             aimed at practitioners
  155.     publisher: Software Maintenance News Inc, B10 Suite 237,
  156.             4546 El Camino Real, Los Altos, CA 94022, USA
  157.     subscriptions: as above
  158.   Software Testing, Verification and Reliability
  159.     summary: aimed at practitioners; dissemination of new
  160.             techniques, methodologies and standards
  161.     publisher: John Wiley & Sons Ltd, Baffins Lane, Chichester,
  162.             West Sussex PO19 1UD, UK
  163.   The Software Practitioner (TSP)
  164.     summary: started late 1990; meant for real practitioners; still
  165.             finding its place
  166.     publisher: Computing Trends, P.O. Box 213, State College, PA
  167.             16804, USA
  168. Mixed Research and Practice
  169.   Journal of Software Maintenance: Research and Practice
  170.     summary: refereed; intended for both researchers and practitioners;
  171.             joint US/UK editorial board
  172.     publisher: Wiley (see above)
  173.     subscriptions: Journals Subscription Department, at above address
  174.   Software Engineering Journal (SEJ)
  175.     summary: full spectrum of articles from practical experience
  176.             to long-term research
  177.     publisher: IEE (Institution of Electrical Engineers) and BCS
  178.             (British Computer Society); write to IEE Publication Sales,
  179.             PO Box 96, Stevenage, Herts, SG1 2SD, United Kingdom.
  180.   Software: Practice and Experience
  181.     summary: not always software engineering; good reputation for practice
  182.     publisher: Wiley (see above)
  183.   The Software Quality Journal
  184.     summary: academic research and industrial case studies and experience
  185.     publisher: Chapman & Hall, Journals Promotion Department
  186.             North America:29 West 35th Street, New York, NY 10001-2291, USA
  187.             Europe: 2-6 Boundary Row, London SE1 8HN, UK
  188. Research Journals
  189. Meant for presenting recent research results.
  190.   Information and Software Technology (IST)
  191.     summary: broad spectrum, much software engineering, software process,
  192.             but also computer science topics.
  193.     publisher: Butterworth-Heineman, Linacre House, Jordan Hill, Oxford, UK
  194.   Transactions on Software Engineering (TSE)
  195.     summary: main software engineering research journal
  196.     publisher: IEEE (see above)
  197.   Transaction on Software Engineering Methodology (TOSEM)
  198.     summary: first issue dated January 1992; not enough track record for an
  199.              opinon yet.
  200.     publisher: Association for Computing Machinery
  201.   Journal of Systems and Software
  202.     summary: meant to be more practitioner-oriented than other
  203.             research journals
  204.     publisher: Elsevier
  205. Other magazines:
  206.   Software
  207.     summary: "For Managers of Enterprise-Wide Software Resources"
  208.             primarily aimed at Management Information Systems (MIS) world
  209.     publisher: Sentry Publishing Company, Inc, 1900 West Park Drive,
  210.             Westborough, MA 01581, (508) 366-2031
  211.  
  212. ------------------------------------------------------------------------
  213. Subject: Other sources of information
  214. Date:  1 Aug 1991
  215.  
  216. Software Quality Engineering has a publication division called Single
  217. Source, Publications, Books, and Information for Software
  218. Practitioners and Managers:
  219.     Software Quality Engineering -- Single Source
  220.     3000-2 Hartley Road
  221.     Jacksonville, FL 32257
  222.     (904) 268-8639
  223.     FAX (904) 268-0733
  224.     TOLL FREE 1-800-423-8378
  225. They do regular reviews of most of the literature relevant to testing, s-eng,
  226. and management. The books which are deemed useful by the reviewers are
  227. purchased for reselling. Their catalog includes most of the literature that
  228. I've come across on Software Testing.  One of the items in the catalog is a
  229. publication which the company puts together itself, The Testing Tools
  230. Reference Guide, a sort of catalog of tools that have passed certain criteria,
  231. (number of unit sold, at least three verifiable references, etc.) They charge
  232. $145.00 for this guide.  This includes two bi-annual updates. I've found the
  233. guide very useful in tracking down vendors which specialize in CASE and
  234. testing tools, although it seems to be heavily biased towards IBM mainframe
  235. hardware and COBOL programming (shudder!).  Each text is described and
  236. summarized I'm sure SQE would be happy to send catalogs free of charge and
  237. most of the prices seem reasonable.  - Glenn Stowe glenn8@odie.cs.mun.ca
  238.  
  239. ------------------------------------------------------------------------
  240. Subject: General reading for software engineers
  241. Date: 11 Oct 1991
  242. Originally collected by: cml@cs.UMD.EDU (Christopher Lott)
  243. Summary: responses to "what should every software engineering have read?"
  244.  
  245. 1. General
  246.    a. Read about 100 pages of comp.risks
  247.    b. Frederick P. Brooks, Jr., The Mythical Man-Month, Addison Wesley, 1978.
  248.       ISBN 0-201-00650-2
  249.    c. The anecdotal books of Robert L. Glass, from Computing Trends, P.O.Box
  250.       213, State College, PA 16804, including: "Tales of Computing Folk: Hot
  251.       Dogs and Mixed Nuts", "The Universal Elixir and other Computing Projects
  252.       Which Failed", "The Second Coming: More Computing Projects Which
  253.       Failed", "The Power of Peonage", "Computing Catastrophes", "Computing
  254.       Shakeout", "Software Folklore"
  255.    d. Paul W. Oman & Ted G. Lewis, Milestones in Software Evolution, IEEE
  256.       Computing Society, ISBN 0-8186-9033-X.
  257.    e. J.A. McDermid (editor), Software Engineer's Reference Book,
  258.       Butterworth-Heinemann Ltd., 1991.  ISBN No: 0 750 61040 9.  Focuses on
  259.       the foundations, and subject matter that is not volatile.  The book is
  260.       divided into three major parts: Theory and Mathematics; Methods,
  261.       Techniques, and Technology; Principles of Applications.  For a beginner,
  262.       the first two parts are indispensible.  It does not provide details of
  263.       current research, but points an interested reader to the right sources.
  264. 2. Programming in the large
  265.    a. Grady Booch, Software Engineering with Ada, second edition,
  266.       Benjamin/Cummings, 1987
  267.    b. Bertrand Meyer, Object-Oriented Software Construction, Prentice-Hall,
  268.       1988.
  269.    c. David L. Parnas, On the Criteria to be Used in Decomposing Systems into
  270.       Modules, Communications of the ACM 15,2 (December 1972).
  271. 3. Programming in the small
  272.    a. Jon Louis Bentley, Writing Efficient Programs, Prentice-Hall, 1982.
  273.    b. Jon Bentley, Programming Pearls, Addison-Wesley, 1986.
  274.    c. Jon Bentley, More Programming Pearls, Addison-Wesley, 1988.
  275.    d. O.-J. Dahl, E.W. Dijkstra, C.A.R. Hoare, Structured Programming,
  276.       Academic Press, 1972.
  277.    e. Brian W. Kernighan, and P.J. Plauger, Software Tools, Addison-Wesley,
  278.       1976.
  279.    f. Brian W. Kernighan & P.J. Plauger, The Elements of Programming Style,
  280.       Second Edition, McGraw-Hill, 1978. ISBN 0-07-034207-5.
  281. 4. Mathematical Approaches
  282.    a. Edsger W. Dijkstra, A Discipline of Programming, Prentice-Hall, 1976.
  283.    b. E.W.Dijkstra.  Selected writings on computing: a personal perspective.
  284.       Springer Verlag, 1982.
  285.    c. David Gries (editor), Programming methodology. A collection of articles
  286.       by members of IFIP Working Group 2.3. Springer Verlag, 1978.
  287. 5. Other
  288.    a. Barry W. Boehm, Software Engineering Economics, Prentice-Hall, 1981.
  289.    b. Daniel P. Freedman and Gerald M. Weinberg, Handbook of Walkthoughs,
  290.       Inspections and Technical Reviews, 3rd edition Dorset House Publishing,
  291.       1990, ISBN 0-932633-19-6.  Originally published by Little, Brown &
  292.       Company, 1982: ISBN 0-316-292826.
  293.    c. Tom Gilb, Principles of Software Engineering Management, Addison-Wesley,
  294.       1988, ISBN 0-201-19246-2
  295.    d. Glenford J. Myers, The Art of Software Testing, Wiley, 1979.
  296.    e. Herb Simon, The Sciences of the Artificial, Second Edition, MIT Press,
  297.       1981
  298.    f. Gerald M. Weinberg, The Psychology of Computer Programming, Van Nostrand
  299.       Reinhold, 1971. ISBN 0-442-29264-3
  300.  
  301. ------------------------------------------------------------------------
  302. Subject: Metrics
  303. Date: 31 Jul 1993
  304.  
  305. Thanks especially to Horst Zuse, who sent his extensive bibliography on
  306. metrics.  He has an extensive database with over 500 entries on metrics;
  307. contact ZUSE%DB0TUI11.BITNET@vm.gmd.de.
  308. a. David N. Card and Robert L. Glass.  Measuring Software Design Quality
  309.    Prentice Hall, Engewood Cliffs, New Jersey, 1990
  310. b. S.D. Conte, H.E. Dunsmore, V.Y. Shen.  Software Engineering Metrics and
  311.    Models.  Benjamin/Cummings Publishing Company, Menlo Park, 1984 ISBN: 0-
  312.    8053-2162-4
  313. c. Tom DeMarco.  Controlling Software Projects: Management, Measurement and
  314.    Estimation.  Englewood Cliffs, N.J.: Prentice Hall, 1982
  315. d. T.Denvir, R.Herman and R.Whitty (Eds.).  Proceedings of the International
  316.    BCS-FACS Workshop: Formal Aspects of Measurement, May 5, 1991, South Bank
  317.    Polytechnic, London, UK, Series edited by Professor C.J. van Rijsbergen,
  318.    ISBN 3-540-19788-5.  Springer Publisher, 1992, 259 pages.
  319. e. Reiner Dumke.  Softwareentwicklung nach Ma`s - Sch`atzen - Messen -
  320.    Bewerten, Vieweg Verlag, 1992.
  321. f. Lem Ejiogu.  Software Engineering with Formal Metrics.  QED Information
  322.    Sciences, 1991
  323. g. N.E. Fenton, (Editor).  Software Metrics: A Rigorous Approach, 1991 United
  324.    Kingdom: Chapman & Hall, 2-6 Boundary Row, London SE1 8HN, ISBN 0-412-
  325.    40440-0.  United States: Van Nostrand Reinhold, 115 5th Avenue, New York NY
  326.    10003, ISBN 0-442-31355-1.
  327. h. Robert B. Grady and Deborah L. Caswell.  Software Metrics: Establishing a
  328.    Company-Wide Program, Prentice-Hall, 1987, ISBN 0-13-821844-7
  329. i. Robert B. Grady.  Practical Software Metrics for Project Management and
  330.    Process Improvement.  Prentice Hall 1992 ISBN 0-13-720384-5
  331. j. M.H. Halstead.  Elements of Software Science.  New York, Elsevier North-
  332.    Holland, 1977
  333. k. S. Henry, D. Kafura, "Software Structure Metrics Based on Information
  334.    Flow", IEEE Transactions on Software Engineering, Vol.SE-7, No.5, September
  335.    1981.
  336. l. IEEE.  Standard Dictionary of Measures to Produce Reliable Software.  The
  337.    Institute of Electrical and Electronics Engineers, Inc.  345 East 47th
  338.    Street, New York.  IEEE Standards Board, 1989
  339. m. IEEE.  Guide for the Use of Standard Dictionary of Measures to Produce
  340.    Reliable Software.  The Institute of Electrical and Electronics Engineers,
  341.    Inc 345 East 47th Street, New York.  IEEE Standard Board, Corrected
  342.    Edition, October 23, 1989
  343. n. T.J. McCabe, A Complexity Measure, IEEE Transactions on Software
  344.    Engineering, VOL. SE-2, NO. 4, Dec. 1976.
  345. o. Alan Perlis, Frederick Sayward, Mary Shaw.  Software Metrics: An Analysis
  346.    and Evaluation.  The MIT Press, 1981
  347. p. V.Y. Shen, S.D. Conte, H.E. Dunsmore, Software Science Revisited: A
  348.    Critical Analysis of the Theory and Its Empirical Support, IEEE
  349.    Transactions on  Software Engineering, Vol. SE-9, No. 2, March 1983.
  350.    Abstract: a critical evaluation of Halstead's software science metric.
  351. q. Martin Sheppard, Software Engineering Metrics, McGraw-Hill Book Company
  352.    (UK) Limited, Shoppenhangers Road, Maidenhead, Berkshire, SL6 2QL.  ISBN
  353.    0-07-707410-6 (UK).  Contains 24 selected papers; 1992.  Tel: +44 (0)698
  354.    23431/2 Fax: +44 (0)698 770224
  355. r. Horst Zuse, Software Complexity: Measures and Methods, de Gruyer (200 Saw
  356.    Mill River Road, Hawthorne, NY 10532 - 914/747-0110) 1991
  357.  
  358. ------------------------------------------------------------------------
  359. Subject: Metrics for object-oriented systems
  360. Date: 26 Jan 1993
  361. Originally collected by: ZUSE%DB0TUI11.BITNET@vm.gmd.de (Horst Zuse)
  362.  
  363. a. Morris Kenneth L.  Metrics for Object-Oriented Software Development
  364.    Environments (master's thesis). 1989, MIT.
  365. b. Rocacher, Daniel: Metrics Definitions for Smalltalk.  Project ESPRIT 1257,
  366.    MUSE WP9A, 1988.
  367. c. Rocacher, Daniel: Smalltalk Measure Analysis Manual.  Project ESPRIT 1257,
  368.    MUSE WP9A, 1989.
  369. d. Lake, Al: A Software Complexity Metric for C++.  Annual Oregon Workshop on
  370.    Software Metrics, March 22-24, 1992, Silver Falls, Oregon, USA.
  371. e. Bieman, J.M.: Deriving Measures of Software Reuse in Object Oriented
  372.    Systems.  Technical Report #CS91-112, July 1991, Colorado State Universty,
  373.    Fort Collins/ Colorado, USA.
  374.  
  375. ------------------------------------------------------------------------
  376. Subject: User Interface Design
  377. Date:  9 Jul 1991
  378.  
  379. See also the item on Human Factors.
  380. a. John M. Carroll (editor).  Interfacing Thought: Cognitive Aspects of
  381.    Human-Computer Interaction, MIT press, 1987.  This book has several good
  382.    theoretical papers.
  383. b. Brad A. Myers, Creating User Interfaces by Demonstration London: Academic
  384.    Press, 1988
  385. c. Donald A. Norman, The Psychology of Everyday Things.  Basic Books, 1988.
  386.    ISBN 0-465-06709-3 (hardback).  Trade paperback version is called "The
  387.    Design of Everyday Things"
  388. d. Donald A. Norman & Stephen W. Draper (editors), User Centered System
  389.    Design: New Perspectives on Human-Computer Interaction, Lawrence Erlbaum
  390.    Associates, 1986.
  391. e. Ben Shneiderman, Designing the User Interface: Strategies for Effective
  392.    Human-Computer Interaction, Addison-Wesley, 1987.  Seems to be aimed at the
  393.    practitioner.
  394.  
  395. ------------------------------------------------------------------------
  396. Subject: Human Factors
  397. Date: 20 Sep 1991
  398. Originally collected by: rjc@cstr.ed.ac.uk (Richard Caley)
  399.  
  400. a. Martin Helander, Handbook of Human-Computer Interaction North-Holland 1988.
  401.    A huge collection of papers on various subjects; quite expensive.
  402. b. Sidney L. Smith, Jane N. Mosier.  Guidelines for Designing User Interface
  403.    Software Technical report ESD-TR-86-278 Electronic Systems Division The
  404.    MITRE Corporation Bedford, MA 01730.  A tech report rather than a book, but
  405.    looks to be a good refence for issues. Also available as a hypertext.
  406. c. Paul Heckel, The Elements of Friendly Software Design: The New Edition.
  407.    Sybex Inc.  1991.  Original edition: Warner Books, 1984.
  408. d. Walter E. Gilmore, The User-Computer Interface in Process Control: A Human
  409.    Factors Engineering Handbook.  Boston:Academic Press, 1989.  Is said to
  410.    give references to research upon which it is based.
  411. e. Edward A. Fox (editor), Resources in Human-Computer Interaction, ACM Press,
  412.    1990.  ISBN 0-89791-373-6.
  413. f. Gavriel Salvendy (editor), Handbook of Human Factors, John Wiley and Sons,
  414.    1987.
  415.  
  416. ------------------------------------------------------------------------
  417. Subject: Software Testing
  418. Date:  9 Jul 1991
  419.  
  420. The original request that prompted the posting of this information asked for
  421. recent work, not buried in a Software Engineering tome.
  422. a. Boris Beizer, Software Testing Techniques, Van Nostrand Reinhold, 1990 (2nd
  423.    edition) ISBN 0-442-20672-0.  503 pages, $43.  Has 37-page annotated
  424.    bibliography of references.
  425. b. Cheatham and Mellinger, Testing Object Oriented Software Systems,
  426.    Proceedings of the 1990 ACM SCS Conference
  427. c. William C. Hetzel, The Complete Guide to Software Testing, Second edition,
  428.    QED Information Services INC, 1988.  ISBN 0-89435-242-3
  429.  
  430. ------------------------------------------------------------------------
  431. Subject: Requirements Analysis
  432. Date: 18 Sep 1991
  433.  
  434. a. Al Davis, Software Requirements: Analysis and specification.
  435.    Prentice/Hall, 1990.  Has some treatment of all of the popular requirements
  436.    analysis and specification methods including OOA, Structured Analysis,
  437.    SREM, FSM, but not the "trendy" stuff (Information Engineering, JAD).
  438. b. Donald C. Gause and Gerald M. Weinberg, Exploring Requirements: Quality
  439.    before design.  Dorset House Publishing, 353 West 12th Street, New York, NY
  440.    10014
  441.  
  442. ------------------------------------------------------------------------
  443. Subject: Collaborative Requirements Analysis
  444. Date: 12 Jan 1991
  445. Originally collected by: anton@cc.gatech.edu (Annie I. Anton)
  446.  
  447. a. Palmer, J.D., Aiken, P. and Fields, N.A.  "A Computer Supported Cooperative
  448.    Work Environment for Requirements Engineering and Analysis", Proceedings of
  449.    the Requirements Engineering and Analysis Workshop, Software Engineering
  450.    Institute, March 12-14, 1991.
  451. b. Palmer, J.D. and Aiken, P.H.  "Utilizing Interactive Multimedia to Support
  452.    Knowledge-based Development of Software Requirements", Proceedings of the
  453.    5th Annual RADC Knowledge-Based Software Assistant Conference, Syracuse,
  454.    NY, September 24-28, 1990.
  455. c. Marca, D.  "Specifying Groupware Requirements From Direct Experience", Proc
  456.    6th International Workshop On Software Specification And Design, October
  457.    1991
  458. d. Marca, D.  "Augmenting SADT To Develop Computer-Supported Cooperative
  459.    Work", Proceedings of the International Conference on Software Engineering;
  460.    May 1991
  461. e. Marca, D.  "Experiences in Building Meeting Support Software", Proceedings
  462.    of the 1st Groupware Technology Workshop; August 1989
  463. f. Marca, D.  "Specifying Coordinators: Guidelines for Groupware Developers",
  464.    Proceedings of the 5th International Workshop on Software Specification and
  465.    Design; May 1989
  466.  
  467. ------------------------------------------------------------------------
  468. Subject: Object-Oriented Analysis and Design
  469. Date: 26 Mar 1993
  470. Originally collected by: haim@taichi.uucp (24122-kilov)
  471.  
  472. a. Bertrand Meyer.  Object-oriented software construction. Prentice-Hall, 1988
  473.    For the somewhat advanced - perhaps, with some programming maturity.
  474. b. B. Henderson-Sellers.  A book of object-oriented knowledge. Prentice-Hall,
  475.    1992.  This has quite a few viewgraphs in it!
  476. c. Grady Booch.  Object-oriented design with applications.  Addison-Wesley,
  477.    1991.
  478. d. Ivar Jacobson Object-Oriented Software Engineering.  Addison-Wesley, 1992.
  479.    This book gives a complete look at Object-orientation from requirement-
  480.    analysis to last phase in design and implementation.
  481.  
  482. ------------------------------------------------------------------------
  483. Subject: Programming Style
  484. Date: 19 Sep 1991
  485. Originally collected by: oman@cs.uidaho.edu (Paul W. Oman)
  486.  
  487. a. N. Anand (1988) "Clarify Function!" ACM SigPLAN Notices, 23(6), 69-79.
  488.    Advocates the use of mnemonic names for entities in a system.  Rules are
  489.    presented for naming procedures, variable, pointers, etc.
  490. b. S. Henry (1988) "A Technique for Hiding Proprietary Details While Providing
  491.    Sufficient Information for Researchers; or, do you Recognize this Well-
  492.    known Algorithm?," Journal of Systems and Software, 8(1), 3-11.  Suggests
  493.    encryption of variable names as part of a technique for encoding
  494.    algorithms, while still providing sufficient information to researchers.
  495. c. R. Brooks (1980) "Studying Programmer Behavior Experimentally: The Problems
  496.    of Proper Methodology," Communications of the ACM, 23(4), 207-213.
  497.    Discusses issues and tradeoffs in proper control of experiments involving
  498.    computer programmers.
  499. d. E. Thomas & P. Oman "A Bibliography of Programming Style Literature," ACM
  500.    SIGPLAN Notices, Vol. 25(2), Feb. 1990, pp.  7-16.
  501.  
  502. ------------------------------------------------------------------------
  503. Subject: Formal Specification
  504. Date: 29 Mar 1993
  505.  
  506. See also the comp.specification.z FAQ.
  507. a. J.M.Spivey.  "Understanding Z: a specification language and its formal
  508.    semantics".  Cambridge University Press, 1988.
  509. b. David Lightfoot.  "Formal Specification Using Z".  MacMillan, 1991, ISBN
  510.    0-333-54408-0.  A clear introduction to Z and the discrete mathematics that
  511.    underlies it.
  512. c. B.Potter, J.Sinclair & D.Till.  "An introduction to formal specification
  513.    and Z".  Prentice Hall International Series in Computer Science, 1991.
  514. d. D.Bjorner & C.B.Jones.  "Formal Specification & Software Development",
  515.    Prentice-Hall International Series in Computer Science, 1980.
  516. e. N.Gehani & A.D.McGettrick (eds).  "Software Specification Techniques",
  517.    Addison-Wesley Publishing Company, 1986
  518. f. I. van Horebeek & J.Lewi.  "Algebraic Specifications in Software
  519.    Engineering", Springer Verlag, 1989.
  520. g. J.Bergstra, P.Klint & J.Heering.  "Algebraic Specification", ACM Frontier
  521.    Press Series. The ACM Press in co-operation with Addison-Wesley, 1989.
  522. h. J.Wing.  "A specifiers introduction to formal methods", IEEE Computer
  523.    23(9):8-24, 1990.
  524. i. Prehn & Soetenel (eds).  "Formal Software Development Methods, VDM'91",
  525.    LNCS 551 and 552, Springer-Verlag.
  526.  
  527. ------------------------------------------------------------------------
  528. Subject: Software Process
  529. Date: 26 Apr 1993
  530. Originally collected by: cml@cs.umd.edu (Christopher Lott)
  531.  
  532. a. Watts S. Humphrey. Managing the Software Process.  Addison-Wesley
  533.    Publishing Co., Reading, Massachusetts, 1989; Chapters 13--15, 18.
  534. b. Bill Curtis, Marc I. Kellner and Jim Over.  "Process Modeling,"
  535.    Communications of the ACM, Sept 92, Vol 35, No 9, 75-90.
  536. c. Victor R. Basili.  "Iterative Enhancement:  A Practical Technique for
  537.    Software Development".  IEEE Transactions on Software Engineering. v.~SE-1,
  538.    n.~4, December 1975, pp.~390--396.
  539. d. Victor R. Basili and H. Dieter Rombach.  "The TAME Project:  Towards
  540.    Improvement-Oriented Software Environments", IEEE Transactions on Software
  541.    Engineering, v. SE-14, n. 6, June 1988, pp.~758--773.
  542. e. Victor R. Basili, "Software Development:  A Paradigm for the Future",
  543.    Proceedings of the Thirteenth Annual International Computer Science and
  544.    Applications Conference, Orlando, Florida, September 1989, pp.~471--485.
  545. f. Barry W. Boehm.  "A Spiral Model of Software Development and Enhancement",
  546.    IEEE Computer, v.~21, n.~5, May 1988, pp.~61--72.
  547. g. Frank DeRemer and Hans H. Kron.  "Programming-in-the-Large Versus
  548.    Programming-in-the-Small", IEEE Transactions on Software Engineering,
  549.    v.~SE-2, n.~2, June 1976, pp.~80--86.
  550. h. J. J. Horning and B. Randell.  "Process Structuring", Computing Surveys,
  551.    v.~5, n.~1, March 1973, pp.~5--30.
  552. i. M. M. Lehman.  "Process Models, Process Programs, Programming Support",
  553.    Proceedings of the Ninth International Conference on Software Engineering,
  554.    Monterey, CA, March 1987, pp.~14--16.
  555. j. Leon Osterweil.  "Software Processes are Software Too", Proceedings of the
  556.    Ninth International Conference on Software Engineering, Monterey, CA, March
  557.    1987, pp.~2--13.
  558. k. Winston W. Royce.  "Managing the Development of Large Software Systems:
  559.    Concepts and Techniques", 1970 WESCON Technical Papers, v.~14, Western
  560.    Electronic Show and Convention, Los Angeles, Aug. 25-28, 1970; Los Angeles:
  561.    WESCON, 1970, pp.~A/1-1 -- A/1-9; Reprinted in Proceedings of the Ninth
  562.    International Conference on Software Engineering, Pittsburgh, PA, USA, ACM
  563.    Press, 1989, pp.~328--338.
  564. l. Peter H. Feiler and Watts S. Humphrey.  "Software Process Development and
  565.    Enactment:  Concepts and Definitions", Software Engineering Institute,
  566.    Carnegie Mellon University, Pittsburgh, PA, 1991.
  567. m. Watts S. Humphrey. "Session Summary:  Review of the State-of-the-Art",
  568.    Proceedings of the Fifth International Software Process Workshop,
  569.    Kennebunkport, Maine, USA, 10-13 October 1989, IEEE Computer Society Press,
  570.    Los Alamitos, CA, 1990.
  571. n. Gail E. Kaiser.  "Rule-Based Modeling of the Software Development Process",
  572.    Proceedings of the 4th International Software Process Workshop,
  573.    Moretonhampstead, Devon, UK, 11-13 May 1988, ACM Press, Baltimore, MD,
  574.    1989, pp.~84--86.
  575. o. Takuya Katayama.  "A Hierarchical and Functional Software Process
  576.    Description and its Enaction", Proceedings of the Ninth International
  577.    Conference on Software Engineering, Pittsburgh, PA, USA, ACM Press, 1989,
  578.    pp.~343--352.
  579. p. Marc I. Kellner and H. Dieter Rombach. "Comparisons of Software Process
  580.    Descriptions", Proceedings of the Sixth International Software Process
  581.    Workshop, Hakodate, Hokkaido, Japan, 29-31 October 1990, IEEE Computer
  582.    Society Press, 1991.
  583. q. Jayashree Ramanathan and Soumitra Sarkar.  "Providing Customized Assistance
  584.    for Software Lifecycle Approaches", IEEE Transactions on Software
  585.    Engineering, v.~14, n.~6, June 1988, pp.~749--757.
  586. r. H. Dieter Rombach. "An Experimental Process Modeling Language: Lessons
  587.    Learned from Modeling a Maintenance Environment", Proceedings of the
  588.    Conference on Software Maintenance - 1989, IEEE, October 16-19, 1989.
  589. s. H. Dieter Rombach. "MVP--L:  A Language for Process Modeling In--the--
  590.    Large", University of Maryland Institute for Advanced Computer Studies
  591.    Technical Report UMIACS--TR--91--96, CS--TR--2709, Department of Computer
  592.    Science, University of Maryland, College Park, MD, 20742.
  593. t. Stanley M. Sutton, Jr. "APPL/A:  A Prototpye Language for Software Process
  594.    Programming", Department of Computer Science Report CU-CS-448-89,
  595.    University of Colorado, Boulder, CO, 1989.
  596. -- 
  597. Software Technology Laboratory      dalamb@qucis.queensu.ca (David Alex Lamb)
  598. Computing and Information Science   phone: (613) 545-6067
  599. Queen's University, Kingston, Ontario, Canada K7L 3N6    
  600.